#pragma once
#include "DrawView.h"
namespace UILib
{
    class CDrawLabelLink: public CDrawView
    {
    public:
        enum{
            Link_Normal = 0,
            Link_Hover,
        };
    public:
        CDrawLabelLink(void);
        CDrawLabelLink(const PUIRect pRect, const UINT uID = -1, ViewListener* pListener = NULL );
        virtual ~CDrawLabelLink(void);

        wstring GetClass() { return L"CDrawLabel"; };

        void setAligns(const UINT uAlign = DT_LEFT ) { uAlign_ = uAlign; };
        void SetText(wstring wszText, const LOGFONT lf, const COLORREF color = 0x000000 );
        void SetText(wstring wszText);

        void SetColor( const COLORREF clNormal, const COLORREF clHover );

        void SetGDIPlusEnable(const bool bEnable);
        virtual void DrawElement( const HDC hDC, const RECT &rcPaint );
        virtual void HandleMessage( UINT uMsg, WPARAM wParam, LPARAM lParam, HWND hWnd, BOOL& bHandled );
    private:
        wstring     wstrText_;
        LOGFONT     lf_;
        COLORREF    color_[2];
        UINT        uAlign_;
        bool        bGDIPlushEnable_;
    };
}